package com.onlygx.dva.web.ui.mapper;

import com.onlygx.dva.web.ui.entity.BasePerm;
import com.onlygx.dva.web.ui.entity.dto.BasePermSearchDTO;
import com.onlygx.dva.web.ui.entity.vo.BasePermShowVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 权限表 Mapper 接口
 * </p>
 *
 * @author GaoXiang
 * @since 2023-08-04
 * @version V1.0
 */
public interface BasePermMapper extends BaseMapper<BasePerm> {

    /**
    * 分页获取权限表数据列表信息。
    * 创建时间：2023-08-04 GaoXiang
    * 修改时间：2023-08-04 GaoXiang 加注释
    * 修改时间：
    * @param page 分页参数
    * @param param 条件参数
    * @return 带分页的数据集
    */
    Page<BasePermShowVO> pageByParam(Page<BasePermSearchDTO> page, @Param("param") BasePermSearchDTO param);

    /**
     * 根据用户ID获取用户所有权限
     * 2023年8月4日15:15:57 高祥
     */
    List<BasePerm> selectByUserId(String userId);

    /**
     * 根据角色ID获取用户所有权限
     * 2023年8月4日15:15:57 高祥
     */
    List<BasePerm> selectByRoleId(String userId);


}
